package com.ldkj.panzh.service;

import com.ldkj.panzh.param.DoorSearchParam;
import com.ldkj.panzh.vo.DoorInfoVo;

import java.util.List;
import java.util.Map;

/**
 * 门禁功能service
 *
 * @author qiancheng
 * @date 2025-11-18
 */


public interface DoorAccessService {
    /**
     * 查询门禁点列表
     *
     * @param doorSearchParam 查询参数
     * @return 门禁状态数据
     *
     * 设备在线状态 (status)：
     *
     * 0 - 离线
     * 1 - 在线
     * 门/道闸状态 (doorStatus/gateStatus)：
     *
     * 0 - 关闭
     * 1 - 开启
     * 2 - 异常
     *
     *
     *
     */
    List<DoorInfoVo> queryDoorStates(DoorSearchParam doorSearchParam) throws Exception;

    /**
     * 查询门禁数量和状态统计
     *
     * @param doorSearchParam 查询参数
     * @return 统计数据（总数、在线数、离线数等）
     */
    Map<String, Object> queryDoorStats(DoorSearchParam doorSearchParam) throws Exception;
}
